{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "5d73d441",
   "metadata": {},
   "source": [
    "运行环境：jupyter notebok"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "22015923",
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.tree import DecisionTreeClassifier\n",
    "from sklearn.model_selection import GridSearchCV\n",
    "# 导入库\n",
    "from sklearn.tree import DecisionTreeClassifier\n",
    "from sklearn import datasets\n",
    "from sklearn.model_selection import train_test_split\n",
    "import matplotlib.pyplot as plt\n",
    "from sklearn.model_selection import GridSearchCV\n",
    "from sklearn.tree import DecisionTreeRegressor\n",
    "from sklearn import metrics"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "876c1f29",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>distance_from_home</th>\n",
       "      <th>distance_from_last_transaction</th>\n",
       "      <th>ratio_to_median_purchase_price</th>\n",
       "      <th>repeat_retailer</th>\n",
       "      <th>used_chip</th>\n",
       "      <th>used_pin_number</th>\n",
       "      <th>online_order</th>\n",
       "      <th>fraud</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>57.877857</td>\n",
       "      <td>0.31114</td>\n",
       "      <td>1.94594</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   distance_from_home  distance_from_last_transaction  \\\n",
       "0           57.877857                         0.31114   \n",
       "\n",
       "   ratio_to_median_purchase_price  repeat_retailer  used_chip  \\\n",
       "0                         1.94594              1.0        1.0   \n",
       "\n",
       "   used_pin_number  online_order  fraud  \n",
       "0              0.0           0.0    0.0  "
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data=pd.read_csv('card_transdata.csv')\n",
    "data.head(1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "ff6a1bac",
   "metadata": {},
   "outputs": [],
   "source": [
    "cols = data.shape[1]\n",
    "X = data.iloc[:, 0:cols - 1]\n",
    "y = data.iloc[:, cols - 1:cols]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "ef18e761",
   "metadata": {},
   "outputs": [],
   "source": [
    "\n",
    "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.01,random_state=123)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "bf8be371",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1000000, 8)"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.shape"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8f6ed7d0",
   "metadata": {},
   "source": [
    "###  test：树深，拟合过？"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "063fb7f6",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "best param: 6; best score: 1.000\n"
     ]
    }
   ],
   "source": [
    "\"\"\"\n",
    "    模型参数调优\n",
    "\"\"\"\n",
    "import numpy as np\n",
    "\n",
    "# 优化模型参数：max_depth\n",
    "def cv_score(d):\n",
    "    \"\"\"\n",
    "    在不同depth值下，train_score和test_score的值\n",
    "    :param d: max_depth值\n",
    "    :return: (train_score, test_score)\n",
    "    \"\"\"\n",
    "    clf = DecisionTreeClassifier(max_depth=d, class_weight='balanced')\n",
    "    clf.fit(X_train, y_train)\n",
    "    train_score = clf.score(X_train, y_train)\n",
    "    test_score = clf.score(X_test, y_test)\n",
    "    return (train_score, test_score)\n",
    "\n",
    "\n",
    "# 指定参数的范围，训练模型计算得分\n",
    "depths = range(2, 15)\n",
    "scores = [cv_score(d) for d in depths]\n",
    "train_scores = [s[0] for s in scores]\n",
    "cv_scores = [s[1] for s in scores]\n",
    "\n",
    "# 找出交叉验证集评分最高的模型参数\n",
    "best_score_index = np.argmax(cv_scores)\n",
    "best_score = cv_scores[best_score_index]\n",
    "best_param = depths[best_score_index]   # 找出对应的参数\n",
    "print(\"best param: {0}; best score: {1:.3f}\".format(best_param, best_score))\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "37dc33ac",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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ffTRpKens27dOmbOnMn48eNj5jNkyBC+++47zj33XC6//HIaN27M+vXrw3egMzMz6dGjB7NmzQKgS5cu3HDDDTRt2pS1a9cycuRIJk6cyKJFi+jevTvz5s2jWrVq4fx3797NJZdcwtatW6levTrXXXcdJ598MnXr1mXv3r2sXLmSWbNm8d///jdP2Z577jkmTJgAwAknnMDAgQM5/PDDqVatGps2beL7779nypQpbNq0KeHX77LLLuOLL75g+fLlzJw5k86dO0dMt3nzZqZMmQLARRddRMWKFXNsz8zMpFOnTvTo0YP27dtTr1499uzZw/Lly3n11Vd5//33mTt3LpdccknMFh0FtWLFCs455xy2bdtGSkoKgwYN4sILL6RmzZp89913PProowwbNoz2cX7H7tu3j9atW3Puuedy9NFH06BBA5xzrFy5krfffpvx48ezfPlyzjvvPObNm0daWvYsi6NGjWLHjh2cfvrprF27lp49e/LQQw/lyL9q1ar5PqfC1rncevXqxaJFi7jppps455xzOOCAA1i8eDEPPvggixYtYtKkSbz44otcc801+S5jSGHqaFZWFj179uSjjz4CEv8MDxgwgLfffhuAtm3b8pe//IUWLVqwadMm/vOf/zB69GjWrl1L9+7d+e6772jYsGHU87jqqqtYsGAB/fv35+KLL6Zu3bosXryYSpUq5UgzduxYAM4880wuu+wymjVrhpkxb948nn76aX744QcGDRpE/fr1OeeccxJ+PUuNooqoaCnfC+WxRcjTTzsH2Uu7dvuvkFJqlKc7tbJ/qM5IospTnUn0bt5v238r8JKxJ/prtWHHBvfJz5+41AdSHcOIuqQ+kOo++fmTHPlu3709ar4bMzYmVMbiEmoR8sgjj4TvhJ5//vlu165dUdOvWbMmx3PBVgaAu/fee6Meb/jw4eF0/fv3d1lZWXnS3H333eE0d955Z45tH3/8cdQWH0F79+51W7ZsyfHciSee6ADXqVMnt3fv3qj7bty4Meq2WPtUrFjRAW7w4MFR040YMSJc/s8//zzP9nj1feTIkeH9p06dGjFNaHtBWoT06tUrvH3cuHF5tm/dujVPa4hI4p3HRx995FJSUhzgXnrppYhpQq1jgq2Jool1zoWtc87lbBFSsWLFiK/dxo0bXb169Rzg2rRpE7fMkRSmjj799NMF/gy/99574X27d+/udu/enWe/YN296KKL8mwPtggB3Msvv5zjmKGWZ5mZme7NN98Mp3vxxRcjlnPnzp2uW7duDnBNmjSJ+XpEUppahGiMECm3nBfAie7bb3M+VmsQERGRIlX3iboFXkbOHRk13xbPtqDb2G45WoJEsi9rH93GdsuR7+MzH4+a/sRRJyZUxuKUlZXFM888A0DDhg0ZO3YslStXjpg2JSWFBg2iDwbfrFkzhg4dGnX7s88+C8CBBx7I8OHDw2MuBD3wwAM0b94cgBdffJHdu3eHt/3666/h9ZNOOinqcVJTU6lRo0aO50L7du7cmdTU6I3VDzgg8THeDjjgAM444wzAGwMk2jgRr732GgCNGzfm+OOPz7P9yCOPjHmcK664ItwaY+LEiQmXM5Z169bxzjvvANCjRw/69Mnbwql69eo8//zzcfOKdx6nnHIK5557LlD055FbYetcbjfeeGOeMUrAqwNXXHEFAN999x1btmxJuKwFraNZWVk8/rj3fVOQz3DoNapYsSKjRo3K0XIj5Oqrr+aUU04B4K233mLdunVRy9etWzeuvPLKqNsfeeQRAM4//3wGDhwYMU1aWhrDhw8HvJZKxdECan9RIETKrU82fUKrEa3o898+PDXrKeasnZMzwdy5OR936LD/CiciIiIFFvdmRzmwYMEC1q5dC3gXO7G6BcRz8cUXU6FChYjb1q5dy6JFiwCvW0j16tUjpqtQoUL4gnLz5s18G7ihdPDBB4fXR40alVDZQvtOmjSJ33//PaF986Nv374AbNiwIdw9IWj16tV8/vnnAFx66aURL8iDnHP8+uuvLFmyhO+//z68hC5i58+fX6TlnzZtGpmZmQDh1z+SY489Nhw0yK8NGzawdOnSHOdx0EEHAUV/HkFFUedyu+yyy6Ju69ixY3h9+fLlCZe3oHV03rx5rFmzBkj8M7xv3z4+/fRTAE499VQOOeSQqGmvvvrq8D6xAhOxXqM1a9bwzTffAN57EkuLFi048MADAcJdm8oiBUKk3FqasZTlfyznP9//h9s+vI1Hvngke+POnbBwYc4d1CJERERESonvvvsuvB6rlUV+tGnTJuq277//PrzeqVOnmPkEtwf3O+GEEzjssMMAuOWWWzj22GN55JFHmDlzZtzZVAYMGADATz/9xBFHHMGVV17J66+/zurVq2Pul1/nnHNO+EI71PIj6PXXXycry5tp6NJLL42az+TJk+nRowc1a9bk4IMP5k9/+hOtW7cOL5MnTwYo8mDOggULwuvHHHNMzLTBC/5oZsyYwcUXX0ydOnWoW7cuzZo1y3EeL774IlD05xFUFHUut1hBoGBLjW3btuWniDkUtI7ODdx0TfQz/PPPP5ORkQEU3WsU63tgzpzsG8Z9+vTJMyNQ7iVUP4KtwcoaBUKk3FqSsSTH42MbHJv94PvvwY+uA2AGbdvup5KJiIiIxLZx48bwerDFRUHUrl076rbgAI/16tWLmU/9+vUj7lexYkUmTZpEixYtAPj666+5++67Of7446lVqxZnnnkm48aNC7dsCLryyiu5++67SU1NZcuWLYwaNYpLL72UQw45hCOOOILbb7+dn3/+Od/nmluVKlXo1asX4HX3CF1choSCI23btuWoo47Ks79zjoEDB9KjRw8mT54c90J6586dBS5rJJs3bw6v160buztWqDVHNMOGDeOEE05g/PjxcQefLerzCCqKOpdbenp61G0pKdmXvJHqYDwFraPBYFKin+HieI1ifQ/89ttvCZQuW+7PU1miWWOkXNqdtZuVO1fmeK5To0A0NXfTumbNoBBNTkVERCSv324v2I9rgGqVov9f/vGGHxk8eTDjF8aeLQXg4lYX88yZz4Qfp1eMfsH0+RWfk5mV+IVScYvXXSOeaN1iEj1OrC5JLVu2ZMGCBUyaNIlJkybx6aefsmzZMnbu3Mn777/P+++/z5NPPsn//ve/PBf0Dz/8MIMGDeK1117j448/5ssvvyQjI4Nly5bxj3/8g3/961/861//4tprr83XeeR22WWXMWbMGHbs2ME777wTHmdj4cKF4S4g0boNjBw5kpdffhmAdu3accstt9CpUycaNmxIenp6+LXt378/r7zySpF32wrmV5j35+OPP+b+++8H4LDDDuP222/nhBNO4NBDD6VatWrh87jvvvt48MEHi6Dk+VOYc9qfCltHC/MZLuznPyTW90AwQPTaa6/FbD0SFCu4UtopECLl0vKdy8kk+wNtGB0PDjQX1PggIiIixe6gqrHvUBfUgekHcveJd/PWj2/FHDA1NSWVu064K9/lOKBK4gNyFpc6deqE19euXcuf/vSnYjlOsNtAvGbu69evj7hfSIUKFTjvvPM477zzAG+gzylTpvDvf/+bb775hm+++YZrrrkmPB1oUOPGjbn77ru5++672bt3L7Nnz2bChAm88MIL7Nq1i+uvv55OnTrFnSI2ku7du3PwwQezbt06XnvttXAgJNQaxMwiDkIKhLuKHH744cycOZMqVapETBdsuVGUgq/z+vXrY44VEas7S+g8atWqxaxZs6K2Limu8wgqyjq3PyVaR0PjaEDin+FEXqPg9oK+RsHvGzOL2DqqvFHXGCmXluzI2S2m5UEtqV45MBCTZowREREp09rWb8vY88aSmhL5vl5qSipjzxtL2/pls+tr20CX3c8++6zYjhO84Pnqq69ipp09e3bE/aI5+OCDufLKK5k1axYd/JtO7733XtxuFxUrVuT444/n6aefZty4cYDXMuDNN9+Me8xIUlJSuOSSSwD48MMPwwGD119/HYAuXbrQqFGjiPv+8MMPAPTs2TNqEMQ5F3Mgz8Jo3bp1eP3rr7+OmTZWGULn0a1bt5hdbIJjRURSFK0TirPO7S/5qaMdAjdaE/0MH3bYYeHuPvvjNQoGGD/88MMC5VHWKBAi5dLSjKU5HndqGOgWs3cvBAYgA9QiREREpAzq07oPc66ew4C2A8JdXtIrpjOg7QDmXD2HPq0j3+UvC4466igaNmwIwEsvvcT27duL5TgNGjQIj+0xYcKEqGNgZGZmMnr0aMBrDt8hgd9OFStWpEuXLoA3s8Uff/yR7327d+8eXi/MAJ6hri979+5lwoQJzJw5MzyDSKzZNEJT7sYaC+Hdd98Nz/BT1E4++eRwl4YxY8ZETTdnzpzwTCyR5Oc85s2bx5dffhmzPGlpaQAxp7KNZ3/Uuf0pWh1t27ZtuAVPop/h1NTU8Gfmo48+YtWqVVHTvvTSS4DXIivSFML5ccQRR9CyZUsA/vOf//DLL78UKJ+yRIEQKZdyB0KObRgYKPXHHyH3l7dahIiIiJRJbeu3ZfR5o9l21za237WdbXdtY/R5o8tsS5CQlJQUbrrpJsCb4rV///5RZ2DJysoq1IX44MGDAW861RtvvDHiuAz3338/C/0Z966++moqV64c3vb555/z008/Rc1/z5494alAq1WrlmNQz1dffTV8kR5J8O5006ZN83lGeXXs2DE8s8hrr70W7hZTqVIlLrzwwqj7HXnkkYA3dWqkbiPLli3j+uuvL3C54jn44IPp2bMn4AVcxo/POy7O9u3b446fEjqPL774IuLAnhs2bAhPNRyvPOCdd2EUts7tTwWtoykpKdxxxx1AwT7Doddo7969XHnllRH3HTlyZPj4F1xwQaEGVr7nnnsA2LVrF7169WLDhg1R0+7evZt///vf7Nq1q8DHK2kKhEi583vG7/y6J2dfuhyBkNzjgzRuDCXc51BEREQKJ8VSqFqpKilWfn7eDhw4kFNOOQWAt99+m9atW/PPf/6TGTNmMHfuXKZMmcLQoUNp3rw5I0aMKPBxrr32Wv785z8DXquDbt268eabb/Ltt98yefJkLrjggvAAmocffjj33ntvjv0//vhj/vSnP9G1a1cef/xxPvjgA7799ltmzJjBqFGjOPHEE8PdNgYOHEhqanZ3pn79+tGoUSOuv/56Xn31VWbNmsXcuXN5//33+ctf/kL//v0BL4CSnwv1WEItP2bOnMmrr74KwNlnn02tWrWi7hM6/po1a+jcuTOjRo1i9uzZfPbZZwwbNoyOHTuyadOmYm2t8I9//CM8BfCll17K4MGDmTZtGt988w2jRo2iY8eOzJ07N+b4KaHz2L59O126dGH48OHMmjWLmTNn8sQTT9C2bVsWLlwYrgfRdO7cGfC66Tz66KPMnz+fn376iZ9++ok1a9bk+5wKW+f2p8LU0cGDB3PqqacCiX+Gzz77bHr37g3A1KlT6dSpE6+++irffPMNU6dOZeDAgQwcOBDwxgZ58sknC3Weffr0CU8V/M0339CyZUvuuecePvroI+bNm8eMGTMYO3YsV199NQ0aNGDw4MExA0SlnnNOi5a4C9AIcIBbtWqVK83e/v5txzDCS5WHqrg9+/ZkJ7j5ZucgeznvvBIrq5S8jIwMN3HiRDdx4kSXkZFR0sWRMkB1RhJVnurMkiVL3MKFC92SJUtKuijlWmZmptu8ebPbvHmz27Ztm7vwwgtd6HdYtGXo0KE58pg2bVp427Rp0+Iec+PGje7444+PeYwWLVq4FStW5Nl36NChccsHuF69ermdO3fm2Dc/+9WqVct98MEHhXlJnXPOLVu2LE/eb775Zsx99uzZ40477bSoZatSpYobP368GzBggANc48aNI+YT7X1yLn/v1bRp01z16tWjluO+++5zQ4YMCT+O5Iorroi6f4UKFdzTTz+d472MZPXq1e6AAw6ImEeXLl3yfc7OFa7OOefiljX42iXyWcitsHV0x44dBfoMO+fczp073fnnnx9zvwYNGri5c+dGPPaoUaPC6ZYvX55jW/B7JjMz0znn3L59+9ydd97pKlSoELe8VatWTfh/WkH+h6xatSp43EauiK5vy0/IXASY/+t87vv0vhzPVatUjYUbFmY/oRljREREpIxIT09nwoQJfPLJJ/Tr14+mTZtSpUoVqlevTvPmzenVqxfjxo0LN8EvqAMOOIDPPvuMV155hTPOOIN69epRsWJF6tSpQ9euXRk+fDjz5s2jcePGefa98847+d///sett97Kcccdx6GHHkpaWhppaWk0adKEiy++mMmTJ/Pf//43PMZEyI8//sgzzzzDeeedR8uWLalTpw6pqanUrl2b4447jmHDhrF48WJOO+20Qp0feANQBls81KhRg7PPPjvmPhUrVmTy5Mn861//4uijjyY9PZ0qVapwxBFHcO211/Ltt9+G79oXp65du/LDDz9w3XXX0bhxYypVqkS9evU4++yzef/99xk6dGjcPEaOHMkrr7zCiSeeSPXq1alcuTKNGzemX79+zJw5k5tvvjluHg0bNmT27NlcddVVHHHEEXnez0QUps7tT4Wto4X5DKelpfHWW2/x7rvv0qtXLxo0aEClSpWoXbs2nTp14pFHHmHx4sW0a9euSM61QoUKPPbYYyxcuJC//OUvtG/fntq1a1OhQgWqV69Oq1atwtNRr1u3LuoAwmWBOe9uv0hMZtYIWAWwatWqqCNrl6TXF7xO/4n9I06jFxo5vk+ri6FWLQgOyjRpEvTosf8KKqXKzp07w30rTzvttDL9hS77h+qMJKo81ZmlS5eyb98+UlNTw2MOSNHLyspi69atgHexnpKie5cSm+qMJKok6kxB/oesXr06OG30Ic651UVRlsjzjYmUMfN/nR81CAKwL2sf/Sf2p2XtZrQdMcJrFfLtt95ftQgRERERERFJGgqESLnw5JdPRg2ChOzL2sdTc55h9CWjwZ9LHrWIEhERERERSSpqMyVlXpbL4s2Fb+Yr7YSFE8hyWdlPmHmLiIiIiIiIJAUFQqTM27l3Jxl7M/KVNmNvBjv37izmEomIiIiIiEhppUCIlHlVKlYhvWJ6vtKmV0ynSsWyO0idiIiIiIiIFI4CIVLmpVgKF7a8MF9pe7fsTYqp2ouIiIiIiCQrXRFKuXDbcbeRmhJ77N+6uypwe/Or9lOJREREREREpDRSIETKhbb12zL2vLFRgyGpKalM3XIeR7U4CQ47DC64AF59dT+XUkREREREREqaAiFSbvRp3Yc5V8+h71F9qZxSGfDGBBnQdgBzrp5D67X+9LrLl8Nbb8GcOSVYWhERERERESkJsfsSiJQxbeu3ZcRZI+hVoRd7svbQ44weVE2v6m2cOzdn4g4d9n8BRUREREREpESpRYiUSymWQlqFtOyBUTduhF9+yZmoffv9XzAREREREREpUQqESHLI3RokLQ1atCiZsoiIiIiIiEiJUSBEksO33+Z83Lo1pKpnmIiIiIiISLJRIESSg8YHERERERERERQIkWSRu0WIxgcRERERERFJSgqESPm3bRssXZrzObUIERERERERSUoKhEj5N38+OJf9uEIFb4wQERERERERSToKhEj5l3t8kJYtvVljREREREREJOkoECLln8YHEREREREREZ8CIVL+acYYERERkSJnZpgZw4YNK7ZjXH755ZgZTZo0KbZjiEjyUSBEyrfdu+GHH3I+pxYhIiIiIiIiSUuBECnXbPFi2Lcv55Pt2pVIWUREREQSMW7cOCpUqICZsWLFipIujohIuZFa0gUQKU6uTRvYuBHmzfO6yKxeDTVqlHSxRERERMo8F5yVr5iMHj2a0aNHF/txRCS5KBAi5d8BB0C3bt4iIiIiIiIiSU1dY0REREREREQkaSgQIiIiIiJlX1YW7Njh/S3jpk+fTu3atRk8eHD4uaZNm4ZnaQkt06dPD2/PPbvKunXrGDJkCK1ataJ69ep50m/evJlRo0bRt29fWrZsSbVq1ahUqRL169fn9NNPZ8SIEezZsydmOWPNGjN69Ojw9hUrVpCVlcWIESPo3LkztWvXpmrVqrRp04aHH36YjIyMqMeIN2tM7jJ8/fXX9OnTh0aNGlG5cmUaNmxIv379WLRoUcxzAdixYwcPPPAArVu3pmrVqtSpU4cTTjiBkSNH4pxj+vTpEV/7RH3yySf06dOHpk2bUqVKFdLT02nSpAnHHXcct99+O5988knM/b///ntuvPFGWrduTe3atUlPT6dZs2ZceOGFvPzyy2zYsCHqvl988QX9+vWjSZMmpKWlUatWLdq3b88999wTc7/c556VlcXIkSM5+eSTqVevHikpKVx++eV59lu8eDE33XQTrVq1ombNmlSpUoXDDjuMK664gm+//Tbfr5lIUVPXGBEREREpu+bPhyefhDffhIwMSE+HCy+E226Dtm1LunQl4ssvv+Scc87h999/j5qmffv2rFy5Ms/z69ev58MPP+TDDz/k+eef53//+x/169cvVHl27NjBqaeemucCf8GCBSxYsIB3332XTz75hKpVqxbqOMOHD+fWW29lX2Cg/LVr1/Lqq6/y1ltvMWXKFE466aSI+65atYpu3brx008/hZ/LyMhgxowZzJgxg7fffpubbrqpUOUDuO2223jqqafyPL9y5UpWrlzJV199xejRoyO+d5mZmdxxxx3885//JCtXwG/ZsmUsW7aMjz/+mO+++44xY8bk2J6VlcVNN93Es88+m+P53bt3M2/ePObNm8fw4cOZMGECp556asxz2LVrF6effjpTp06Nme7BBx/kgQceyPF+ACxfvpzly5czZswY7r33Xu6///6Y+YgUBwVCRERERKRsev116N8/5wxxGRkwdiyMG+f97dOn5MpXQMcccwwzZszgf//7Hw8//DAAH3zwAQ0aNMiRrmnTpnn23b59OxdccAG7du3ib3/7G6eeeirp6eksWLCAgw8+OJwuMzOTTp060aNHD9q3b0+9evXYs2cPy5cv59VXX+X9999n7ty5XHLJJYVq/QAwaNAgvvzySwYMGMBFF11E/fr1+eWXX/j73//OrFmzmD17Ng899BCPPPJIgY/xwQcf8NVXX9GmTRtuvvlmWrduzc6dO3n77bf55z//SUZGBv369WPp0qVUqlQpx7579uzhrLPOCgdBzjzzTAYNGsQhhxzC6tWrGTFiBO+9917MFhP58d5774WDIG3atOG6666jRYsW1KxZky1btvDjjz/y0UcfMWvWrIj7Dxo0iJEjRwJw8MEHc8MNN9C5c2dq1qzJ+vXr+eKLL3jnnXci7vvXv/41HARp2rQpQ4YMoUOHDuzYsYN3332X4cOHs2XLFnr06MHs2bNpGyOIOGTIEL777jvOPfdcLr/8cho3bsz69evZunVrOM19993Hgw8+CEDnzp258soradWqFRUrVmTx4sUMHz6cWbNm8cADD3DggQdy4403Jv6CihSGc06LlrgL0AhwgFu1apUrzTIyMtzEiRPdrL/9ze0eM8a5xYudy8ws6WJJKRWqLxMnTnQZGRklXRwpA1RnJFHlqc4sWbLELVy40C1ZsiR/O/z2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PNQisrvgdCH6FLjBebAMaAQsiZTQzLoC02Ic8zXg8QTKGLIqvwk/++yzHH0VS5tm77yTI2K16ZBD+CLGXOgiIYk2NxVRnZFElfU6U6dOHapUqYKZsXXr1pIuTmTby88QaW3atCEtLY1du3Zxzz33sGfPHg499NDwDCgHH3xw+KI61KUhKysr7nvTu3dvFixYwJo1a+jcuTM33XQTzZs3Z9euXXz++ec899xz7Nmzh7Zt2zJ//vy4ee7evTvP9mDQb/v27VH33x54v3bt2pUnXX7PK1IZgkKtYPbt25cnXb9+/Xj55ZdZtGgRzz77LEuWLOHyyy+nYcOGrFmzhjFjxvDhhx/SsWNHvvnGa0i+c+fOhD8DQ4YM4brrruOss86ic+fOHH744VStWpVNmzbx5ZdfMmLECMAbjLRPnz458u/SpQv9+vXjlVdeYebMmbRq1YqBAwfSqVMnatSowcaNG5k7dy4TJ06kVatW/Pvf/w7v27hxYwYPHswzzzzDggUL6NChAzfffDNt2rRh586dvP/++7zwwgtkZmZSqVIlnnjiiTznFmw9lJGREfPcW7duzZ133sljjz3G8uXL6dChA3379uXkk0+mfv367N69m19++YWvv/6ad999l3Xr1jFjxgxq1KiR0OspRWf7fvre3LdvX/im+o8//hh/Bwo/fXc0SRkIAaoH1vPzrocCIYlOofsOEJo8+z4z+59zLsetID8oc1+M8uXXCuBa59wHBdi33KixfDmNP/oox3OVtm6lxvLlbG3atIRKJSIiIpK46tWrM2jQIP71r38xf/58LrjgghzbJ02axAknJNpzG6699lqmT5/OJ598wpIlS7jhhhtybK9SpQrPPfccH374YcTpXMubSpUq8cYbb9CzZ0+WL1/ORx99xEe5fk9269aN6667jt69ewM5uy0lYsuWLbz++uu8/vrrEbenpaXx1FNP0a5duzzbnnrqKdLS0njppZdYt24dDz74YMQ8guOehAwbNoyMjAxefvllVqxYwa233ponTY0aNRg1ahStW7dO7KQi+Otf/0rNmjW5//772b59O88//zzPP/98xLSVKlUiLS2t0McUSUSyBkKCn7Q9+Ugf6pQZuR1bFM65r8zsXeBcvBlhPjWzu4HQDDV/Bv7P37YHqJSP43wNhL6dKgOH+vn3A0aZ2b3OuZcTKacvXmuX+v6x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vqSkpNCwYUPWrFmDc47t27ezfft2zCw8fogUjX379gGwYcOGEi6JlBWqM5Ko4q4zwXFBQg466KBS0TVGgRARERERybfq1avnCIaA92M39INaCs85x86dOwGoUqVKuBWOSDSqM5KokqgzNWvWpE6dOsV+nPxQIEREREREElK9enWaNWvG9u3b2bp1K3v27Mlz108KLisrK3yBUq1atVIxw4KUbqozkqj9VWcqVKhAeno6tWrVIi0trViOURAKhIiIiIhIwlJSUqhRo0aOAVSlaOzcuZMff/wRgI4dO1KlSpUSLpGUdqozkqhkrzMKFYqIiIiIiIhI0lAgRERERERERESShgIhIiIiIiIiIpI0FAgRERERERERkaShQIiIiIiIiIiIJA0FQkREREREREQkaSgQIiIiIiIiIiJJQ4EQEREREREREUkaqSVdACkzKoRW1q1bV5LliGvnzp38/vvvAKxevZoqVaqUcImkNFN9kUSpzkiiVGckUaozkijVGUlUWakzua49K0RLlyhzzhVVXlKOmdnRwNclXQ4RERERERFJSsc45+YURUbqGiMiIiIiIiIiSUMtQiRfzKwy0Np/uAHILMHixFOf7NYrxwC/lmBZpPRTfZFEqc5IolRnJFGqM5Io1RlJVFmpMxWAg/z1Bc653UWRqcYIkXzxK1yRNEMqbmYWfPirc251SZVFSj/VF0mU6owkSnVGEqU6I4lSnZFElbE6s7KoM1TXGBERERERERFJGgqEiIiIiIiIiEjSUCBERERERERERJKGAiEiIiIiIiIikjQUCBERERERERGRpKFAiIiIiIiIiIgkDQVCRERERERERCRpmHOupMsgIiIiIiIiIrJfqEWIiIiIiIiIiCQNBUJEREREREREJGkoECIiIiIiIiIiSUOBEBERERERERFJGgqEiIiIiIiIiEjSUCBERERERERERJKGAiEiIiIiIiIikjQUCBERERERERGRpKFAiIiIiIiIiIgkDQVCRERERERERCRpKBAiZZ6ZdTCzu81sipmtMrPdZrbdzJaY2WgzO7Gkyyhlg5n93cxcYOla0mWS0sfMDjSzO81shpn96n/nrDWzr8zscTP7c0mXUUoHM6tkZleZ2ftmti7w/2mxmY00s+NKuoyyf5hZXTPrYWYP+L9Xfg/8rxldgPzOMLO3zGy1X69W+4/PKIbiy35WFPXFzNLMrKeZPeP/f9pkZnv9v7PMbJiZHVzMpyL7SVF/x+TKO93Mfg7kt6JoSl2yzDlX0mUQKTAz+xQ4KR9JXwEGOuf2FHORpIwys7bAHCA18PTJzrnpJVMiKY3MrDfwHFAnRrJ3nHPn7Z8SSWllZocAk4HWcZI+BfzF6QdZuWZmsd7fMc65y/OZjwHPA4NiJBsBXKs6VXYVtr6YWRvgC6B6nENtw/t9PD6xEkppU1TfMVHyfgL4S+Cplc65JgXNr7RIjZ9EpFRr6P9dC0wAPgd+ASoAf8b70DYE+uHV90tLoIxSyplZCvAiXh35DahbsiWS0sjM+gOj8FpT/oYXEPkC2ATUBw4HzgH2llQZpXQws1RyBkG+A54EFuNdmJyA9/+pKnArsA54fP+XVErIKmARcFoB9n2I7CDIXODvwDK87587gfb+9g3APYUuqZQGBakvNcgOgswA3sO72bMROAjoBQz004wzs23OuSlFVmIpaYX5jsnBzNoDtwC78H7fxAuulRlqESJlmpm9B4wF/uucy4yw/UC8fwDN/KdOcs59vh+LKGWAmd2Cd1d2ETARuMvfpBYhAoCZtcC76KiMF3A9xzm3JUraSmp9ltzM7ALgTf/hLODE3P+jzKyjv60isBmo65zbt18LKvuNmd0PfA187Zxbb2ZNgOX+5nzdrTWzI/D+T6XiXdSe5JzbGdieDnwKHA3sA5o755YV5XnI/lHY+mJmnYGbgfudcwujpOkJvA0YXjDtSLUiKruK4jsmQp4VgK+AjsB9wFVAY8pJixCNESJlmnOuh3NufKQgiL/9d3I25bpw/5RMygq/+fqD/sPrAF3ASiTP4AVBfgd6RQuCACgIIsDxgfVHIv2Pcs59g3eXFqA20Hx/FExKhnNuqHPuPefc+kJkcyvZrblvDAZB/GNkADf6D1Px7uJKGVTY+uKcm+mcuzhaEMRP8w7wlv/wcKBdQY4lpUMRfcfkdjNeEGQx8FgR5lsqKBAiyWB6YP3wkiqElFr/BqrhRcs/LenCSOljZs2B7v7D4X6AVSSWSoH1n2OkC96tr1xMZZFywB8bpKf/8Efn3JeR0vnPL/YfnufvJxLNtMC6fiNLmJk1Bh7wH15XHm/yKBAiySD4gzSrxEohpY6ZXQT0wBvj4Y4SLo6UXr0D6xNCK2ZW28yONLNYA6dKcloSWD8sRrrQhYcDlhZfcaQcaEr2uGjxgvah7Y2AJsVVICkXggFY/UaWoH/jjWP1inNuWrzEZZECIZIMugTWfyyxUkipYma1gH/6D4c45zaUYHGkdAtNcboFWGRml5nZfLwA2hLgd39auaFmVq3ESimlyevAVn99iN/POgd/ALqz/Yf/cc5tzZ1GJKBFYD3eb5ng9hZRU4noN7JEYGaXAGfhjV91ewkXp9goECLlmj8byF8DT2l6MAn5O95MHzOBl0u4LFK6tfT/rsAbK+RVoE2uNE2BYcAsM2uw30ompZIfWL0c2Ik3XsjXZtbfzI4zs1PMbCjeXftKwDzgtpIqq5QZhwTWV8dJuyrKfiJhZtaW7GDsD7HGE5HkYWa1gaf9h391zv1WgsUpVgqESHl3K3Csv/62c25OSRZGSgczOwFv2rh9wLUaJV3iOMD/2xwYDPwBXIs3zXIacAwQmnbwKGCCH4SVJOacextv9o6X8QYhHIM3S8xHeEGzDLwAyAnOuV9LppRShgSnrNweJ+2OwLpaqUkeZlYZeAkItVa7uwSLI6XL40A9vP9XL5ZwWYqVfqhJuWVmXYBH/Ye/4c0IIknOzCoBI/Cmi3vKObeghIskpV9V/29lIBM40zn3gnNug3Nutx9g7UF2MKQz0KsEyimliJlVBC4FzsH7vsmtHtAH6LofiyVlV1pgPd6ghbsD61WKoSxS9g3HC9SCN1j8uyVZGCkdzOwk4EqS5EahAiFSLplZK7y50VPxfhBcVMTTSUnZdTden+lfgPtLuCxSNuwKrE+INFuDcy6LnAPu9in2UkmpZWZVganA34A6eF3xWuAF02oCpwFf4LUmmmRmN5dQUaXsCH4PVYqayhMcAHNn1FSSlMzsLrxWsQDf4LV0lCTntxIK3Sj8p3PuuxIuUrFTIETKHTNrCnwI1Ma7e9tH06IKhKdBvct/eKNzbkes9CK+bYH1KdESOed+ANb4D48p1hJJaXc/cJK/fpVzbohz7kfn3B7n3Fbn3EfAyXhTVxrwpJnlHndGJCj4PRSvu0vVwHq8bjSSRMzsGuD//IeL8Vo46reQgBe4/xPeGEPDSrYo+0dqSRdApCj5gxROBRrgTUd4pd9PWwS8MWMqAT8D6f6o2LkdFVjvZmb1/fVJ+rGQtFbhDawL+RuksCHe+CGShMzMgCv8h0ucc2MipXPO7TOze/FahqT4+9y6f0opZVDwu6dRnLTBAVJXRU0lScXM+uBNiQqwEjhFM+ZJwBD/71Sgh/evLI9QkLVq4Df0b865T4q7cMVBgRApN8zsQLxB6A7zn7rROTe2BIskpU+oufBheNNbxnNvYL0pOQegk+TxA9ktPPJMg5pLaPu+4iuOlHL1yB5gd26ctN8E1psXT3GknAjO6BGvrgS3LyqGskgZY2bnAmPxgq7rgO7OuXiBfUkuoS53V5AdzI/mQLJ/R38KlMlAiLrGSLlgZjWBD8ie5vKvzrlnS7BIIlJ+fBZYPzxO2lAgdk3MVFKeBYNg8W44VYyyn0huy4G1/nqXOGlD3bLW4E37LUnMzLoD4/G+jzYCpzrnlpVsqURKngIhUuaZWTowGejgP/Wwc+6xEiySlFLOucudcxZrIecAqicHtq0ooWJLyXsX2OuvR50Nxp+pqo7/8PPiLpSUWpuArf76n80sVjAkeEG7vPiKJGWdP3vDO/7D5mZ2XKR0/vOhFiHvlPdZHyQ2M+uMV28q430vne6PZyWSQ7zfx/5v5JV+8pWB57uWYLELRYEQKdP8qVDfBo73n/qnc+6eEiySiJQzzrmNwEv+w1MjjS1jZtWBpwNPvbAfiialkD+D0GT/YQO8AejyMLPaQDBo/14xF03KvqfJbjn0jJnlmBrXf/yM/3AfOb+TJMmYWTu876KqeF17z3LOfRNzJ5EkojFCpKx7HW8aQvD6p71sZkfFSL/HObek+IslIuXMUOBs4FDgFTM7HngL7w5ba7xBxkJ3YZ9zzn1dIqWU0uIBoCeQDgwzs47AGLyBmtOA44Bb8OoTwMfOuQ9LoJyyn5jZCcARgacODKwfYWaXB9M750bnzsM5t8TMngD+ChwNzDCzx4BleN32hgDt/eSPO+eWFtkJyH5V2PpiZofjdRmv5T91D7Alzm/k35xzvxWwyFLCiuI7JtmYWsxJWWZmiVbglc65JsVRFikfzGwY3kUveF1jppdcaaQ0MbMWeN1kjoiRbCRwrXNub4w0kgTM7BS8YP2BcZJ+AlzonNtc/KWSkmJmo4EB+U3vN0OPlE8K8CJwZYzdXwYG+a2TpAwqbH3xL3pHJXjY+51zwxLcR0qJovqOiXOMFUBjysn1lLrGiIiI5INzbhHQDrgD+ApvLIg9eNNavgF0c85dpSCIADjnpuK1EhoCTAc24I01sxNvPJDxwHl4U1gqCCL54pzLcs5dhddC7R28AVT3+H/fwev+MFBBEBGR2NQiRERERERERESShlqEiIiIiIiIiEjSUCBERERERERERJKGAiEiIiIiIiIikjQUCBERERERERGRpKFAiIiIiIiIiIgkDQVCRERERERERCRpKBAiIiIiIiIiIklDgRARERERERERSRoKhIiIiIiIiIhI0lAgRERERERERESShgIhIiIiIiIiIpI0FAgRERERERERkaShQIiIiIiIiIiIJA0FQkREREREREQkaSgQIiIiIiIiIiJJQ4EQEREREREREUkaCoSIiIiIiIiISNJQIERERKQMMjPnL8NKuixFxcxW+Oc0uqTLkl9mdqiZvWBmy8xsV+B9Oa+ky1bSiquOmtl0P9/pRZmviIgkDwVCRESkxJlZ18BFkzOzbWaWno/9qpjZllz7di3+Eot4QRDgG2AQcBhQuYD5jM5Vh0PLLjNbb2aLzextM/ubmXUoynOQ/c/MLo/yfieyTC/p8xARKcsUCBERkdKoGnBePtL1BGoUb1GkMAIX+StKuizF4B7gQGAfMAT4M9DaXz4ugvwrA3WBZnifh4eAb8xstpmdXAT5i4iIJKXUki6AiIhILruANKAfMC5O2n659hHZn07x/050zv29iPI8HVjrr6cAtYD6QCe8YMhhwDHAVDN7yDk3tIiOW+Scc1ZM+XYtjnz3o4nAnCjbGgAf+Ovv4AXbItlRxGUSEUkqCoSIiEhp8y5wEXCqmdV3zv0aKZGZ1QVO8x++A1y8n8onEtLQ/7ukCPNc4pxbEeH58WZ2BzAAGA6kA/eZ2Xrn3L+L8PhSzJxzfwB/RNpmZtsDD/9wzn2/P8okIpJs1DVGRERKmw+BX4EKQJ8Y6frgBfTXAx/th3KJ5FbJ/7t3fxzMOZflnBuF12pkn//0P8ys/v44voiISHmhQIiIiJQ2mcDr/nq/GOn6+3/H+fvEZGZHmdk9ZvaBma02s91mtt3MlprZGDM7Lsa+fQKDFL4QI92hZvaHn26JmVWNV64YeV3mz46x2S/n92Z2v5nVSjCfY83sRb88281sh5n9aGbPmtmRMfYLDujYxMwqm9ntZvatP0DtVjP7yswGm1mFCPsPMzOH14IBoHGkQR/jlL25X/YV/vu13h80NOp7lQgzSzGzvmb2PzP71cz2mNkGM5tmZtebWaUI+1weoexDc53X6KIoXzTOuS+Ap/yHacCtsdIXtA7kyuMoM3vGzBb4dTLDzH4ys/fN7DozOyjCPjFnjTGzWuYNADvLz3Ov//ov9N/n6/yWX7n3y9esMWZ2gpm94tefXf5nc66ZPRSpvIH9goM3d/Wfu8jMPvbLt9O8AWz/bmYHxH7lil7u19XMupnZBDNb5b+GKyLsU9u8779ZZva7/3laa2bvmFmvfB433cxu8T8f6/3Py29m9qGZXRHpe0BEpNRyzmnRokWLFi0lugBdAecvlwPtA49bRUjfMrC9vb9P6HHXOPnHWh6JUcZXA+l6RtieAkz3t+8Fjinga5EKvBmjjD8BTQOPh8XI599xzncPcHWU/YOvaXu8MQ2i5fM5UD3X/sPy85rn2meF//xooBfeOAiR9tsHXFzIOncA8EWc8i0EGsd4XaItoxMsy+jAvk3yuU8jvACgw+tOU+R1wM+jAvBk4Fj5PudYdRRoAazJx2t5Q4R9p/vbpkcpcwpe96FY+f4BnJqP76PuwGsx8lkK1C9MXcx17Cbx6lHwdQUejlCmFbnSnwVsjvN6vAdUi1GuY4DVcfL4CqhXVK+FFi1atBTnohYhIiJS6jjn5gKhvvGRWoWEnvvBTxtPKt5F9XjgWrwLnQ7AGcBfgJV+ur+a2RVR8rge70Id4CXL2x3hDqCLvz7MOfd1PsoVyVPABf76YuAqvIuQU4AX8IIgb+Qjn5eB6/z1KUBf4Fg/r6uBH4CKwAgzOydOXi8AHf3jngUcDVwKhM7xBLyLxaB/482e8o7/eC3ZM6oEl0ja+PmtB24AjsObkWUY3sC4FfxyR72rH4t/5/o94Hj/qU+B3v55nYs3mCV4F+sfm1m1wO4TI5T9uVzn9LeClCsRzrnVwI/+wyMj1EcomjowAq/FSQqwDu/cTsb7/JwO3AvML8ApvII3MOhevLpyjl+uTsD5wCMUfOyVR4HB/vpyvM/8sX65n/KPWRN4z8zaxsnrAby6PhEvONcR7zMw2d9+BNmtc/a384G7gQXAlXjn2AUvcAWAmZ2KN+5SLbzvryFkf/+dgxfgBTgbGBPpIGbWGpiGNybOb8D9eN9H7fHqwLN4wcljgXfMrGJRnaCISLEp6UiMFi1atGjRQq4WIf5zd/qPVwEpgbQG/OJvG+I/d3lg/64R8j8QqBXj+JXwxiZxeBcLFaKkOwHvB7/Du7A0//n2wG6yW0dE3D8fr0Mbsu+8f0OEO7R4XYKCd2GHRUhzQWD7wCjHSsOb4tXhXSym5tp+ea7j3BUhj1Tg/UCasyOkGR16XfNx/isCec0BakZIc1kgza0FfJ0HB/IYE3ofc6UJ3ml/LEo+Ud+DBMszOpBXkwT2eyWw34nFUAd6BvKYGecz1Ci/rw/ezDehbXlafATSGVA7wvPTidIiBC8QFfoMLYhUZrwAaCjNVxG2d81V9/8WpWwf+Nv3AgcVpg4E8m0SOO7oOPXOAVOBylHSVcUbb8n5ZU2Pku7qQH7dI5znfH/bPODAKHkEX9OriuK10KJFi5biXNQiRERESqvXgCy8LgBdAs93BQ7xt+VuhRCRc+53583UEG37HrwWHQCNgXZR0n2Bd6cavB/+N5hZFb8clYCtQD/nXNwxS6K4luzxuwY557bnTuCcG4sXhInlLv/v2865lyIlcM7twmttAd7FV9cY+X0HPBYhj33AQLIHC70+TrkScaVzbkuE58eRPb3siQXMO9Ra4He8C3EXIc19ZLe4uNrMKhfwWMVpY2C9dq5tRVEH/ur/zQB6x/kMrY5f3LBg65XPYuTpnHObE8gXvBYwoc/Q1ZHK7Jx7HxjpPzzWzI6Jkd83wP9FKhvZLS9S8Vos7W9ZeEGu3VG2XwHUw2tF1c85lxEpkXPuRWB2YJ+gs/ECtAD9nXO/R8njfbwufZHyEBEpdRQIERGRUsk5twavOTbk7B4TWp+e4MVXmHkDfx5qZi39QSCPwrvzGRKrufz9ZF80/B3vwryF/3iwizz1aX6d4v9d4Jz7Jka6kdE2mFlDvOb74HUFiso5twgvGACxL+TGOOeyouSxGq81DUDXIhowcYFz7rsox3NAqDvUYYlmbGYNyH6/xjvntkU5TiYwyn9YG68rQWkTDJRVD60URR0wszp43VTAe53WFLq02dYF1i8vwnwh+zO00Dn3ZYx0L0bYJ5JxUQJl4AVJQhKui0VgRpzvm57+30+dc7/FySsUkMr9PRDKY3G0z2SEPI7RwKkiUtopECIiIqXZWP/vhWZWxW99ERo/45VEMjKzqmZ2l5nNxxsvZCXeGAkL/CU41siB0fLxW0Fc5ueRBpznb/qPc+7VaPvlo3xpeOMNQPbYG9HMjrHt6MD66xZhphbLOWtL6FxjTcGa3/KkUzQXhD/G2b7J/1s9ZqrIjgqsfxUnbXD7UVFTlZzg+W8NrBdFHWhHdnAwaquNgnDOLcfrQgZwq5n9YGYP+LOfpBc0X7/VTmgWnHjv7VyyWzLFem9j1cVNgfWC1MXCiheYCNWD0/NRB2730+b+Hgjl8ad85DHcT1sJbzBiEZFSS4EQEREpzd7Ca5ZfHe/O5HlADWAn8N/8ZmJmTfCCHf+H18w73t3KKrE2Oud+whuQMeR3sgelLKhaZF94xrt7uz7GtjzTjeZTrAvQRMpTFBdAEZvwB4RapxTkrnOwfLFeR/DGV4i0X2kRDNgFL8qLog4E816XO2ER6APM8tdb4g26+jHwh5l9ambX+sHBRAS7B8V8b51ze8nuWhTrvY1aF3O1kiqJFhBRuw35A5bWKkCeub8HiuP7RESkxKWWdAFERESicc5tN7O38Vpg9CM7UDAxWpeGKF4he8rZUcB/gEXAhlD/ejNLwRvsD3J2k8nDn0Uk2A++Dl7XiU8SKFOebAPr0Zri50fwguwy4t81Dok1FkO88sR8vUqxsn5e7QPrwRlWiroOFKY+Rs7Q62rT2cy6483G0gUvIFIROMlfbjezs5xzBZk9Jj9lLu3vbzyxxiIK1oHxwIMFPEYonxl4Yxjl19r4SURESo4CISIiUtqNxbuYOy3wXL67xZhZc7zZXgAecc5Fm9o092CTsTxDdheQbXgtVsaYWZsCDO4YEtyvXpy0sbYHB9B0zrnvo6bMv3rEnso0eNd4U9RUpUOwfLG6A0HO17lUnZeZHQL8yX+42Dm3IbC5KOpAcFDMBgXYP1+ccx/jtQQJjUtyCjAI6AYcjjdlc/uoGeQU/AzFfG/NLJXsliCl6r0tCs65XWaWgdcyo1Yhvgc24n0ODiqi7xIRkVJBXWNERKS0+xivaX6qv6wne3DO/GgVWP9PjHRHx9gWZmYXkD3A42jgIn+9EfB8AuXKwZ/BY6n/MNYsFvG2B8c6OS1qqsTktzwZwM+5thV5a4JCCl7MdYqaynNslP1Kg5vI/h33dq5tRVEH5pL93p1UwDwS4pzb6Jx7wznXHXjXf7qdmR0Za7/A/rvJ/gzFe2/b47U+gdL33haVUD04vhBjr4TyaGZmjYugTCIipYICISIiUqr5s3e8Auz2l1cTnJ422Pox1sVA3Gbf/owjI/yHPwM3+dNGhgYJvMjM+kXcOX+m+n9bm1msu+BXRtvgj1+y0H94iZkdWojyhPQzs4jdCPwZSkIX29MjvDe7/L+lYvpZ59xavG5RAL3NLOIgl/6sF5f7DzcD3xZ/6fLHzE4AbvEf7gKeDm4vijrgnNsEzPQfXuTX/f3p48B61MGLIwh9hlqa2XEx0g2MsE95EwomVSV7yuiC5gFwZ+GKIyJSeigQIiIipZ5zbohzLs1fbo+/Rw5LA+sDIiUws+vInv0lIj8QMBqvOX0m0DcwTsmdZF94Di/EndMXyL4LP8LMqkYox2XAWXHyecj/mwa8ZWYHRUvoTyV8fZyBKdsBd0TYNxVvGtJK/lPPRdg3NNBm3WhBhxLwrP/3IOCZKEGeoXhjVgC8GBpLpiSZWYqZXQ58QHaA72bnXKSBQYuiDjzm/00HJphZzRh5NMrPOfhp25lZuxjbjewpbR2wIr9549XB0CCmIyKV2cxOA67yH852zsWbFamsep7sLk4PmtmZsRKb2fFmlrv1z3/JDhxeZ2ZXEYM/Hfk5BSqtiMh+pDFCRESkvJuL1/T9KLwf8rWA1/Au0A8B+gIX4g0GeHyMfG4BTvXX/885F5rxAufcTjPrC3yJN6vNK2bWNdesEnE55+ab2bPADXhddeaY2WN4M97UBHrjjZ8whxhdeZxzr5vZ6XiBn47AQjN7AfgU2IB3h/hw4ES8gSoPIHuq4kjmAI/5F69j8WaRORK4jezuI5Occ+9F2DfUqiAFeN7MnsEbd8D5Zf0pxnGLy/N44878Ge81auy/7j8DB+O1uOnlp11GwQeaLIhm/mC84L1mNfHGu+gEnE/22DRZwP3OuRF5syiaOuCcm2RmL+MFDTr7eQzH+6xsxWupcTRe97DvyG5BE087YJSZfQ1Mwmtt8yteV5WmeAMRhz5r7zjn8j1rjXNugZn9Ay9w1xr41v8MzcUL6JyD162oArAHuCa/eZc1zrmtZtYHmILXIus9M/svXnBjmZ/sYLz6cT7ejFo3Epgu2TmXaWYX432OqwEvmVlvYBywGG8K4rp4XY164NWTf+C9ryIipZYCISIiUq4555zfXeUTvAFR+/hL0AK8IEPEmQ7MrDXwiP9wNvBAhOPMNbP78KbVPREYEtgnEbfhDU7ZC2iON8tN0HK8C8/cY3HkdhXeeCp/wbtg/Zu/RLKD2DNQDAJeJvJrB96F8WVR9v0EL0B0HHCpvwTt95k7/Iu7HnjN/o8HuvpLbouAM51z2/df6fggH2lmA3c65z6Nk64o6sA1eNNVD8arl/8XZf/8zkwTdAyxx5/5guyWG4n4K16g53q8wNELEdJsAS5yzs0rQP5lhnNuqh8Qew0voNbbX6LZGiGPBWZ2PPAmXgD0dH/Jdx4iIqWNusaIiEi551/stMNrCbAS7y7mJrwLytuBY6PddTazyngXEZXxLhb7Ouf2RTnU43h33AHuN7OOBSjrXufcBXjTBX+Od8GWgXdR/n9AR+fc8nzkk+mcG4LXveMfeHfEN+Nd7G4DfvDPawBwsHNuZ4zsNuPd6b0LmOfvvx34Gu8Ocpdo0xn7rWJOw+uqMd/fr8QHUPXHwDgJ73V+Hy9gsBevtcp0vFY57ZxzK0uqjHgtFjbgde96B7gHaO+c65SPIEiR1AE/jxvxWn6MwJs9aAdenVwK/A+4Grg1gfMaB5yMV58/xwvuZfjnuxovQHUpXr1KeEYX51yWc24w3vv7GvAL3vhCW/Hq7/8BRzrnEhl0ucxyzn2C1/rnBry6vg7vtd4FrMIbfPpvQHPnXMSWYc657/Dq0QBgor/fLj+fdXifmYfwvp/yBIpFREobc67Ef4uIiIhIKeOPRRFqjdLUObei5EojIiIiUnTUIkREREREREREkoYCISIiIiIiIiKSNBQIEREREREREZGkoUCIiIiIiIiIiCQNBUJEREREREREJGlo1hgRERERERERSRpqESIiIiIiIiIiSUOBEBERERERERFJGgqEiIiIiIiIiEjSUCBERERERERERJKGAiEiIiIiIiIikjQUCBERERERERGRpKFAiIiIiIiIiIgkDQVCRERERERERCRpKBAiIiIiIiIiIklDgRARERERERERSRoKhIiIiIiIiIhI0lAgRERERERERESShgIhIiIiIiIiIpI0FAgRERERERERkaShQIiIiIiIiIiIJA0FQkREREREREQkaSgQIiIiIiIiIiJJQ4EQEREREREREUka/w/440W6cMMazQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 1200x800 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "\"\"\"\n",
    "    参数调优可视化\n",
    "\"\"\"\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "plt.figure(figsize=(6, 4), dpi=200)\n",
    "plt.grid()\n",
    "plt.xlabel(\"Max depth of Decision Tree\")\n",
    "plt.ylabel(\"score\")\n",
    "plt.plot(depths, cv_scores, \".g--\", label=\"cross validation score\")\n",
    "plt.plot(depths, train_scores, \".r--\", label=\"training score\")\n",
    "plt.legend()\n",
    "plt.show()\n",
    "# ————————————————\n",
    "# 版权声明：本文为CSDN博主「fpzRobert」的原创文章，遵循CC 4.0 BY-SA版权协议，转载请附上原文出处链接及本声明。\n",
    "# 原文链接：https://blog.csdn.net/Mr_Robert/article/details/88924175\n",
    "# '最优分类器:', grid.best_params_,"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b7d39448",
   "metadata": {},
   "source": [
    "### 调参"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "39d8fc57",
   "metadata": {},
   "outputs": [],
   "source": [
    "param = {\n",
    "    'criterion': ['gini'],\n",
    "    'max_depth': np.arange(1, 100, 1),\n",
    "    'min_samples_leaf': np.arange(2, 10, 1),\n",
    "    'min_impurity_decrease': [0.1, 0.2, 0.5]\n",
    "}\n",
    "grid = GridSearchCV(DecisionTreeClassifier(class_weight='balanced'), param_grid=param, cv=5)\n",
    "grid.fit(X_train, y_train)\n",
    "print( '最优分数:', grid.best_score_)  # 得到最优分值\n",
    "#决策树   \n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2acf4b58",
   "metadata": {},
   "source": [
    "### 代入最优参数，训练模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "231887ca",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 将得到的最优参数带入到算法中\n",
    "clf=DecisionTreeClassifier(criterion='gini', max_depth=1, min_impurity_decrease= 0.1)\n",
    "\n",
    "#######\n",
    "#####\n",
    "########\n",
    "#####"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "2b84c012",
   "metadata": {},
   "outputs": [],
   "source": [
    "# import time\n",
    "# start=time.perf_counter()\n",
    "# clf.fit(X_train,y_train)\n",
    "# end=time.perf_counter()\n",
    "# print(\"训练时间：\",end-start)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "76145ef9",
   "metadata": {},
   "outputs": [],
   "source": [
    "clf.feature_importances_ #特征重要性"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "36e812e9",
   "metadata": {},
   "outputs": [],
   "source": [
    "clf.predict_proba(X)：返回一个数组，数组的元素依次是X预测为各个类别的概率值。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "d2e09e5f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "测试时间： 0.0018162999913329259\n"
     ]
    }
   ],
   "source": [
    "import time\n",
    "start=time.perf_counter()\n",
    "y_pred = clf.predict(X_test)\n",
    "end=time.perf_counter()\n",
    "print(\"测试时间：\",end-start)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "641539c9",
   "metadata": {},
   "source": [
    "混淆矩阵"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "67f5d4ba",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0（预测未被诈骗）</th>\n",
       "      <th>1（预测被诈骗）</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0（实际未被诈骗）</th>\n",
       "      <td>9119</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1（实际被诈骗）</th>\n",
       "      <td>0</td>\n",
       "      <td>881</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "           0（预测未被诈骗）  1（预测被诈骗）\n",
       "0（实际未被诈骗）       9119         0\n",
       "1（实际被诈骗）           0       881"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sklearn.metrics import confusion_matrix\n",
    "import numpy as np\n",
    "m = confusion_matrix(y_test,y_pred)  # 传入预测值和真实值\n",
    "a = pd.DataFrame(m, index=['0（实际未被诈骗）', '1（实际被诈骗）'], columns=['0（预测未被诈骗）', '1（预测被诈骗）'])\n",
    "a\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "62d80883",
   "metadata": {},
   "outputs": [],
   "source": [
    "# from sklearn import metrics\n",
    "# print(\"查准率：\",metrics.precision_score(y_test,y_pred))\n",
    "# print(\"召回率：\",metrics.recall_score(y_test,y_pred))\n",
    "# print(\"F1分数：\",metrics.f1_score(y_test,y_pred))\n",
    "# print(\"准确率：\",metrics.accuracy_score(y_test,y_pred))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "37692264",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
